//存在一个按升序排列的链表，给你这个链表的头节点 head ，请你删除所有重复的元素，使每个元素 只出现一次
/*
输入：head = [1,1,2]
输出：[1,2]

输入：head = [1,1,2,3,3]
输出：[1,2,3]


*/
class Solution
{
public:
    ListNode *deleteDuplicates(ListNode *head)
    {
        if (!head)
        {
            return head;
        }

        ListNode *cur = head;
        while (cur->next) //
        {
            if (cur->val == cur->next->val) //
            {
                //需要释放删除的节点的空间
                ListNode * temp = cur->next;

                cur->next = cur->next->next;

                delete cur->next;//
            }
            else
            {
                cur = cur->next; //
            }
        }

        return head;
    }
};
